You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java字符串长度计算程序问题:无法获取完整字符串求解决

解决Java输入字符串无法获取完整内容的问题

嘿,我明白你现在遇到的困扰啦——用next()方法只能拿到空格前的部分,所以输入带空格的字符串时,就没法获取完整内容,长度计算自然也不对啦。

问题原因

Scanner的next()方法是以**空白字符(空格、回车、制表符等)**作为分隔符的,它只会读取到第一个空白符之前的内容。比如你输入Hello Java,next()只会返回Hello,剩下的Java会留在输入缓冲区里,自然就没法得到完整的字符串啦。

解决方案

把in.next()换成in.nextLine()就可以啦!nextLine()方法会读取整行内容,直到遇到换行符(也就是你按下回车的时候),这样不管输入里有没有空格,都能完整获取到整个字符串。

修改后的代码如下:

import java.util.Scanner;
public class Length {
    public static void main (String [] args) {
        Scanner in = new Scanner (System.in);
        String cad = in.nextLine(); // 这里换成nextLine()
        System.out.println(cad);
        System.out.println("The length is:" + cad.length());
    }
}

小提示

测试的时候可以试试输入带空格的内容,比如I love Java,这时候程序会输出完整的字符串,并且计算出正确的长度11哦~

另外顺便提一句,类名lengt建议改成Length,符合Java的大驼峰命名规范,这样代码更规范易读😉

内容的提问来源于stack exchange,提问作者User22

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:40:35