Java 如何初始化字符串变量?代码没有错误,但由于未初始化变量name而无法编译
我写了这段代码,但我认为我做错了什么,因为它没有按预期打印出来。用户输入他们的名字,它应该为他们名字的每个字母吐出一个描述。除了不能识别变量字母外,代码的所有方面都是完美的。如何初始化它以使其工作 今天到期。有人能看一下,告诉我我遗漏了什么吗Java 如何初始化字符串变量?代码没有错误,但由于未初始化变量name而无法编译,java,string,Java,String,我写了这段代码,但我认为我做错了什么,因为它没有按预期打印出来。用户输入他们的名字,它应该为他们名字的每个字母吐出一个描述。除了不能识别变量字母外,代码的所有方面都是完美的。如何初始化它以使其工作 今天到期。有人能看一下,告诉我我遗漏了什么吗 import java.util.Scanner; /** * This program asks for a mane and will print out * an acrostic name poem. * * @author () *
import java.util.Scanner;
/**
* This program asks for a mane and will print out
* an acrostic name poem.
*
* @author ()
* @version (October 24th, 2017)
*/
public class AcrosticName {
public static void main(String[] args) {
String name; //a string of characters
String letter = "";
int length;
Scanner input = new Scanner(System.in);
//Print a program header
System.out.println();
System.out.println("Arcostic Poem Maker");
System.out.println();
//Have user enter their name
System.out.println("Enter Your Name: ");
name = input.nextLine();
length = name.length();
//for a loop to go through the name
//and find letters used in name
for (int i = 0; i < length; i++) {
if (letter.equals("A") || letter.equals("a")) {
System.out.println(" A is for Academic, you are smart");
} else if (letter.equals("B") || letter.equals("b")) {
System.out.println(" B is for Benevolent, you are nice");
} else if (letter.equals("C") || letter.equals("c")) {
System.out.println("C is for Cosmopolitan, well-versed in cultures");
} else if (letter.equals("D") || letter.equals("d")) {
System.out.println("D is for Decent, a heart of gold");
} else if (letter.equals("E") || letter.equals("e")) {
System.out.println("E is for Enigmatic, you have an alluring pull");
} else if (letter.equals("F") || letter.equals("f")) {
System.out.println("F is for Fine, a jolly good fellow");
} else if (letter.equals("G") || letter.equals("g")) {
System.out.println("G is for Gentle, a kind soul ");
} else if (letter.equals("H") || letter.equals("h")) {
System.out.println(" H is for Hip, cooler than everyone else");
} else if (letter.equals("I") || letter.equals("i")) {
System.out.println("I is for Independent, never swayed by others");
} else if (letter.equals("J") || letter.equals("j")) {
System.out.println("J is for Joyful, radiating bliss");
} else if (letter.equals("K") || letter.equals("k")) {
System.out.println("K is for Kindred, you feel like family");
} else if (letter.equals("L") || letter.equals("l")) {
System.out.println("L is for Light-hearted, you have an easy laughter");
} else if (letter.equals("M") || letter.equals("m")) {
System.out.println("M is for Meticulous, careful with details");
} else if (letter.equals("N") || letter.equals("n")) {
System.out.println("N is for Nutty, full of wackiness");
} else if (letter.equals("O") || letter.equals("o")) {
System.out.println("O is for Oasis, full of zen");
} else if (letter.equals("P") || letter.equals("p")) {
System.out.println("P is for Popular, liked by all");
} else if (letter.equals("Q") || letter.equals("q")) {
System.out.println("Q is for Quintessential, the epitome of awesomeness");
} else if (letter.equals("R") || letter.equals("r")) {
System.out.println("R is for Ravishing, an entrancing beauty");
} else if (letter.equals("S") || letter.equals("s")) {
System.out.println("S is for Sharp, always observant");
} else if (letter.equals("T") || letter.equals("t")) {
System.out.println("T is for Tolerant, endless patience");
} else if (letter.equals("U") || letter.equals("u")) {
System.out.println("U is for Unassuming, ever humble");
} else if (letter.equals("V") || letter.equals("v")) {
System.out.println("V is for Virtuous, living in righteousness");
} else if (letter.equals("W") || letter.equals("w")) {
System.out.println("W is for Wacky, a unique personality");
} else if (letter.equals("X") || letter.equals("x")) {
System.out.println("X is for X-ray, you're a visionary");
} else if (letter.equals("Y") || letter.equals("y")) {
System.out.println("Y is for Youth, eternally young at heart");
} else if (letter.equals("Z") || letter.equals("z")) {
System.out.println("Z is for Zippy, living at breakneck speed");
}
}
}
}
import java.util.Scanner;
/**
*此程序要求使用鬃毛,并将打印出来
*一首首首首字母缩写的名字诗。
*
*@author()
*@版本(2017年10月24日)
*/
公共类AcrosticName{
公共静态void main(字符串[]args){
字符串名称;//一个字符串
字符串字母=”;
整数长度;
扫描仪输入=新扫描仪(System.in);
//打印程序标题
System.out.println();
System.out.println(“神秘的诗人”);
System.out.println();
//让用户输入他们的名字
System.out.println(“输入您的姓名:”);
name=input.nextLine();
length=name.length();
//用于循环遍历名称
//找到名字中的字母
for(int i=0;i
您在for
循环的开头缺少字母的赋值
for (int i = 0; i < length; i++)
{
letter = Character.toString(name.charAt(i));
//...
for(int i=0;i
“不按预期方式打印”给出更多细节。输入、输出和预期输出是什么?因此,在编译和运行它时,它要求输入一个名称,例如Sam。它应该输出:S代表sassy a代表焦虑M代表仔细。所有这些都将在单独的行中一个接一个。我给出的示例不完全是代码上的内容,而是更多或更少的内容rn关于调试。这会帮助您很快发现问题。它不起作用。出现了一个错误。它说需要一个数组,说明说我不能使用数组。很抱歉。我用C#写了答案。我只是用Java修改了它。