System.out.print(block.hash + "\r" );
Мне бы хотелось, чтобы пользователь мог совершать транзакции из своего кошелька (требуя ввода), но похоже, что из-за строки I' Как я написал выше, он либо игнорирует ввод, либо принимает хэш в качестве входных данных, когда я нажимаю Enter. Я попробовал использовать объект сканера, выполнив Scanner.nextline(). Это принимает ввод, но из-за многократной распечатки хеша он заменяет ввод, который пользователь вводит вручную, текущим хешем.
Код: Выделить всё
// BLOCK CLASS mine method
public void mineBlock(){
nonce++;
hash = calHash();
currentHashValue = new BigInteger(hash,16);
}
// MINER CLASS minemethod
public void mineBlock(Block block) {
System.out.println("mining block at index: " + block.blockNumber + ", at difficulty: " + block.getDifficulty() + "... ");
while (!block.isHashFound(block.currentHashValue)) {
block.mineBlock();
// System.out.print(block.hash + "\r");
}
System.out.println("Nice you've mined a block: " + block.hash);
}
// TEST INPUT CLASS
public class test implements Runnable{
Scanner scanner = new Scanner(System.in);
@Override
public void run() {
System.out.println("please input something");
String input = scanner.nextLine();
System.out.println("you have inputted: " + input);
}
}
public class Main {
public static void main(String[] args) {
ConcurrentLinkedQueue linkedQueueToMiner = new ConcurrentLinkedQueue();
Thread miner = new Thread(new Miner(linkedQueueToMiner));
Thread wallet = new Thread(new Wallet(linkedQueueToMiner));
Thread node = new Thread(new Node(linkedQueueToMiner));
Thread test = new Thread(new test());
node.start();
wallet.start();
miner.start();
test.start();
}
}
Код: Выделить всё
please input something
mining block at index: 20, at difficulty: 776499968...
5f15dd7faa
you have inputted:
6d27ec1231153bdc
0ba3c8f36044
d3ce
Код: Выделить всё
System.out.print(block.hash + "\r");
Код: Выделить всё
please input something
mining block at index: 20, at difficulty: 776499968...
aaaaaaaa
you have inputted: aaaaaaaa
Подробнее здесь: https://stackoverflow.com/questions/788 ... -in-a-loop