字符串——String

ops/2024/9/25 6:11:02/

目录

1:String概述

2.String注意点

3.创建String对象的二种方法

4.字符串的比较

4.1:==号比的是什么?

4.1.1:基本数据类型(比较的是数据值)

4.1.2:引用数据类型(比较的是地址)

注:new是在堆里面开辟一个空间,int a=10中a记录的是串池的地址值。

4.2:比较

5.字符串的练习

5.1:用户登录

5.2:遍历字符串


1:String概述

java.lang.String类代表字符串,java程序中的所以字符串文字都是此类的对象(eg:"abc")。

2.String注意点

字符串的内容不会发生改变,它的对象在创建后不能被改变。

3.创建String对象的二种方法

1.直接赋值:

 String name="随便写";

2;new关键字

package Demo;public class first {public static void main(String[] args) {//直接赋值String name="随便写";System.out.println(name);//随便写//使用new方法来获取一个字符串对象//空参构造:可以获取一个空白的字符串对象String s2=new String();System.out.println("@"+s2+"!");//@!//传递一个字符串,根据传递的字符串内容创建一个新的字符串对象String s3=new String("abc");System.out.println(s3);//abc//传递一个字符数组,根据字符数组的内容再创建一个新的字符串对象//需求:我要修改字符串的内容。char[] chs={'a','b','c','d'};String s4=new String(chs);System.out.println(chs);//abcd//根据一个字节数组,根据字符数组的内容再创建一个新的字符串对象//我们一般把字节信息进行转换,转换字符串,此时就要用到这个构造了。byte[] bytes={97,98,99,100};String s5=new String(bytes);System.out.println(s5);//abcd}}

4.字符串的比较

4.1:==号比的是什么?

4.1.1:基本数据类型(比较的是数据值)

package Demo;public class second {public static void main(String[] args) {int a=10;int b=20;System.out.println(a==b);//false}
}

4.1.2:引用数据类型(比较的是地址)

String s1=new String("abc");String s2=new String("abc");System.out.println(s1==s2);//false
注:new是在堆里面开辟一个空间,int a=10中a记录的是串池的地址值。

4.2:比较

4.2.1:boolean equals方法(比较字符串) 完全一样才是true,否则为false。

4.2.2:boolean equalsIgnoreCase(要比较字符串) 忽略大小写的比较。

package Demo;public class second {public static void main(String[] args) {String s1=new String("abc");String s2="Abc";System.out.println(s1==s2);//falseboolean result=s1.equals(s2);System.out.println(result);//falseboolean result1=s1.equalsIgnoreCase("abc");System.out.println(result1);//true}
}

5.字符串的练习

5.1:用户登录

要求:已经知道正确的用户名和密码,请用程序实现模拟登录。总共用三次机会,登录以后,给出相应的提示(设置的账号被锁定,请联系客服)。

package Demo;import java.util.Scanner;public class 登录设置 {public static void main(String[] args) {String rightUsername="zhangsan";String rightPassword="123456";for(int i=0;i<3;i++) {Scanner sc = new Scanner(System.in);System.out.println("请输入用户名:");String username = sc.next();System.out.println("请输入密码:");String password = sc.next();if (username.equals(rightUsername) && password.equals(rightPassword)) {System.out.println("用户登录成功");break;} else {if(i==2) {System.out.println("账号"+rightUsername+"被锁定,请联系客服");}else{System.out.println("用户登录失败,用户名或密码有误,你还剩下" + (2 - i) + "次机会");}}}}
}

5.2:遍历字符串

注:public char charAt(int index):根据索引返回字符

package Demo;
import java.util.Scanner;
public class four {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个字符串:");String str=sc.next();for(int i=0;i<str.length();i++){char c=str.charAt(i);System.out.println(c);}}
}//请输入一个字符串:saca
输出:
s
a
c
a


http://www.ppmy.cn/ops/115649.html

相关文章

DBeaver中如何导入excel中的大量数据

之前也让导入过大批量的excel数据&#xff0c;忘记当时怎么导入的了&#xff0c;今天又让导入&#xff0c;感觉手工导入应该是不行的&#xff0c;太费人工了&#xff0c;还是想点办法&#xff0c;于是问了文心一言&#xff0c;操作如下&#xff0c; 在DBeaver中导入Excel中的数…

Facebook隐私设置指南:如何更好地保护个人信息

在数字化时代&#xff0c;隐私保护成为了每个互联网用户面临的重要课题。Facebook&#xff0c;作为全球最大的社交网络平台之一&#xff0c;拥有庞大的用户基础和丰富的个人数据。因此&#xff0c;了解和管理Facebook的隐私设置对保护个人信息至关重要。本文将为您提供一份详细…

Django 对数据库的增删改查

新增 使用方法&#xff1a;类模型.objects.create 类模型 from django.db import models# Create your models here. class Car(models.Model):user models.CharField(max_length200)plate_number models.CharField(max_length20)def __str__(self):return f{self.user} -…

【HarmonyOS】深入理解@Observed装饰器和@ObjectLink装饰器:嵌套类对象属性变化

【HarmonyOS】深入理解Observed装饰器和ObjectLink装饰器&#xff1a;嵌套类对象属性变化 前言 之前就Observed和ObjectLink写过一篇讲解博客【HarmonyOS】 多层嵌套对象通过ObjectLink和Observed实现渲染更新处理&#xff01; 其中就Observe监听类的使用&#xff0c;Object…

PHP如何从字符串中删除转义字符

在PHP中&#xff0c;从字符串中删除转义字符并不是一个直接的过程&#xff0c;因为“转义字符”这个概念在PHP字符串中通常指的是那些用于表示特殊字符&#xff08;如换行符\n、制表符\t、引号\或\"等&#xff09;的反斜杠&#xff08;\&#xff09;。然而&#xff0c;如果…

练习题 - Django 4.x Models Meta 元数据选项

在 Django 中&#xff0c;Meta 类是模型定义的一部分&#xff0c;用于配置模型的各种行为特性。通过使用 Meta 元数据选项&#xff0c;开发者可以控制模型的排序、权限、数据库表名等属性&#xff0c;提供了灵活性和定制化。在实际的 web 应用开发中&#xff0c;合理配置 Meta …

Android线程使用总结

Android线程使用总结 1. Threading Performance 在程序开发的实践当中&#xff0c;为了让程序表现得更加流畅&#xff0c;我们肯定会需要使用到多线程来提升程序的并发执行性能。但是编写多线程并发的代码一直以来都是一个相对棘手的问题&#xff0c;所以想要获得更佳的程序性…

数据结构哈希(hash)

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 数据结构哈希(hash) 收录于专栏 [C进阶学习] 本专栏旨在分享学习C的一点学习笔记&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 目录 1. 哈希的概念 2.…