Используя метод charAt, они не будут добавляться как Int, и не будут печататься как строки. Объясню лучше
Хорошо, вот мой код:
import java.util.Scanner;
public class CarRental {
public static String model;
public static int letternum;
public static String plate;
public static String letter;
public static int total;
public static String alphabet = "abcdefghijklmnopqrstuvwxyz";
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//System.out.println("Car Model:");
//model = input.nextLine();
System.out.println("License Plate: ");
plate = input.nextLine();
char one = plate.charAt(0);
char two = plate.charAt(1);
char three = plate.charAt(2);
total = one + two + three;
letternum = total % 24;
char letter = alphabet.charAt(letternum);
System.out.println("" + letter + total);
}
}
Что происходит, так это то, что я пытаюсь заставить его взять мой номерной знак и взять символы в местах 0, 1 и 2. Которые на номерном знаке будут тремя буквами. Затем я пытаюсь взять их значения ASCII, сложить их все вместе и установить их в int "total". Затем, чтобы найти букву, которая должна быть перед итоговым значением, я нахожу остаток от суммы с помощью% 6. Затем он примет это значение, и любое число, скажем, 4, будет 4-ая буква в строке «алфавит» и установите ее как символ «буква». Затем следует распечатать письмо, за которым следуют итоговые значения ASCII.
Вот пример того, что мой вклад с ожидаемым результатом, а затем его фактический результат.
Номерной знак: CPR 607
Выход: E836
Мой вывод с точно таким же номером:
Номерной знак: CPR 607
N229
Я не уверен, что я делаю неправильно, но моя лучшая подсказка в том, что факт, что это символ, он воспринимает его как значение ASCII, а не как значение String (которое я на самом деле пытаюсь получить)
Если бы кто-нибудь мог предложить несколько советов, это было бы очень полезно. Не обязательно код, от которого я могу просто просочиться, но как я должен делать это правильно!