java-徐 2023-03-19 17:17 采纳率: 100%
浏览 32
已结题

JAVA的startsWith有关问题

本人现在是在自学JAVA,属于小学生级别.
今天发现一个问题,正常来说使用startsWith()判定字符串首,括号里面的东西不是要带上双引号""吗?
为什么这个代码不加双引号能运行成功,加了反而运行之后毫无反应,有没有师傅能讲讲其中的原委.
[代码在倒数第二行]

package com.woniuxy.package01;
import java.util.Scanner;
public class lessoon3 {
    public static void main(String[] args) {
//.contains()判断一个字符串里是否包含某个字符串,结果为布尔类型
//丛键盘输入姓氏,查询匹配的名单
        Scanner good = new Scanner(System.in);
        String[] str = { "王青", "苏小雨", "唐纯里", "王路玩", "姜藤椒", "姜子牙", "唐均" };
        System.out.println("请在下方输入需查询的姓氏");
        String a = good.next();
        for (String god : str) {
            if (god.startsWith(a)) {
                System.out.println(god);
            }
        }
    }
}

  • 写回答

4条回答 默认 最新

  • Huazie 优质创作者: 编程框架技术领域 2023-03-19 17:22
    关注

    这里的 a 本身就是一个 字符串变量, 它的值实际上包含了 双引号" "; 如果你对a加上双引号,"a" 它不就是一个值为 a 的字符串嘛

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月27日
  • 已采纳回答 3月19日
  • 创建了问题 3月19日