package com.test;
import java.util.Scanner;
/**
* Test.java
*/
public class Test {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
while(true){
String a = input.next();//接收输入的字符串
String b = a.trim();//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:"+d);
System.out.println("第二个字母到最后:"+e);
}
}
}
输入Store Name回车,打印出的结果是:
首字母为:S
第二个字母到最后:tore
首字母为:N
第二个字母到最后:ame
可以看出编译器将Store 与Name当作两个字符串来处理了
我希望出现的结果:
首字母为:S
第二个字母到最后:toreName
求解答
8 个解决方案
#1
将input.next()换成input.nextLine()即可
#2
将String b=a.trim();去掉,
换成String b = a.replace(" ","");
换成String b = a.replace(" ","");
#3
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
System.out.println(a);
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:"+d);
System.out.println("第二个字母到最后:"+e);
}
}
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
System.out.println(a);
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:"+d);
System.out.println("第二个字母到最后:"+e);
}
}
#4
input.next() ;遇到空格 会自动读取完毕
nextLine(),这样的话,无论有没有空格还是什么都会读完一行.
nextLine(),这样的话,无论有没有空格还是什么都会读完一行.
#5
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
while (true) {
String a = input.nextLine();// 接收输入的字符串
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
while (true) {
String a = input.nextLine();// 接收输入的字符串
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
#6
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while (true) {
String a = input.next();// 接收输入的字符串
a = a + input.next(); //第二行与第一行拼接到一起
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
#7
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:"+e);
}
}
#8
谢谢各位,已搞定,用了nextLine()
#1
将input.next()换成input.nextLine()即可
#2
将String b=a.trim();去掉,
换成String b = a.replace(" ","");
换成String b = a.replace(" ","");
#3
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
System.out.println(a);
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:"+d);
System.out.println("第二个字母到最后:"+e);
}
}
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
System.out.println(a);
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:"+d);
System.out.println("第二个字母到最后:"+e);
}
}
#4
input.next() ;遇到空格 会自动读取完毕
nextLine(),这样的话,无论有没有空格还是什么都会读完一行.
nextLine(),这样的话,无论有没有空格还是什么都会读完一行.
#5
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
while (true) {
String a = input.nextLine();// 接收输入的字符串
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
while (true) {
String a = input.nextLine();// 接收输入的字符串
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
#6
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while (true) {
String a = input.next();// 接收输入的字符串
a = a + input.next(); //第二行与第一行拼接到一起
String b = a.trim();// 去空格
String d = (String) b.subSequence(0, 1);// 第一个字母
String e = b.substring(1, b.length());// 第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:" + e);
}
}
#7
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
while(true){
String a = input.nextLine();//接收输入的字符串
String b = a.replace(" ", "");//去空格
String d = (String) b.subSequence(0, 1);//第一个字母
String e = b.substring(1, b.length());//第二个字母到最后
System.out.println("首字母为:" + d);
System.out.println("第二个字母到最后:"+e);
}
}
#8
谢谢各位,已搞定,用了nextLine()