La classe String se trouve sous le package java.lang, il n'est donc pas nécessaire d'importer le package lors de son utilisation.
La classe String représente une chaîne, et tous les littéraux de chaîne dans les programmes Java (tels que : "abc") sont implémentés en tant qu'instances de cette classe.
Les chaînes sont immuables, leurs valeurs ne peuvent pas être modifiées après la création
Bien que les valeurs de String soient immuables, elles peuvent être partagées
Les chaînes sont effectivement équivalentes à Character array (char[]), mais le principe sous-jacent est un tableau d'octets (byte[])
project | Value |
---|---|
public String() | Créer un objet chaîne vide sans aucun contenu |
public String(char[ ] chs) | Créez un objet chaîne basé sur le contenu du tableau de caractères |
public String(byte[ ] bys) | basé sur Use le contenu du tableau d'octets pour créer un objet chaîne |
String = "abc" | Créez un objet chaîne par affectation directe, le contenu est abc |
Créé par new. Objet String, chaque nouveau s'appliquera à un espace mémoire. Bien que le contenu soit le même, la valeur de l'adresse est différente
char[ ] chs = {'a','b','c'};
String s1. = new String(chs);
String s2 = new String(chs);
Dans le code ci-dessus, la JVM créera d'abord un tableau de caractères, puis il y aura une nouvelle adresse à chaque fois que new sera utilisé, sauf pour s1 et s2, le contenu de la chaîne référencée est le même.
Utilisez "==" pour la comparaison
Type de base : ce qui est comparé est de savoir si les valeurs des données sont les mêmes
Type de référence : ce qui est comparé est de savoir si l'adresse les valeurs sont les mêmes
Les chaînes de caractères sont des objets. Comparer si le contenu est identique est obtenu grâce à une méthode : equals()
public boolean equals(Object anObject) ; l'objet spécifié. Puisque nous comparons l'objet String, le paramètre est donc passé directement sous forme de chaîne.
Le code est le suivant :
import java.util.Scanner; public class ArrayDemo{ public static void main(String[] args) { String username="abc"; String passworld="123"; //使用循环实现三次登陆机会 for(int i=0;i<3;i++){ Scanner sc=new Scanner(System.in); System.out.println("请输入用户名:"); String name=sc.nextLine(); System.out.println("请输入密码:"); String pwd=sc.nextLine(); if(name.equals(username)&&pwd.equals(passworld)){ System.out.println("登陆成功!"); break; }else{ System.out.println("用户名或密码错误,请重新登录!"); } } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!