java中的String类 字符串拆分成字符串数组 判定邮箱地址 字符串比较 看结果?

看结果1?

package com.swift;

class ArrayString {
    public static void main(String[] args) {
        String str = "swift:30|sunny:28|Ben:32";
        String str1[] = str.split("\\|");
        for (int i = 0; i <= str1.length - 1; i++) {
            String str2[] = str1[i].split("\\:");

            System.out.println("名字是" + str2[0] + "-->" + "年龄是" + str2[1]);
            System.out.println();

        }
    }
}

看结果2?

package com.swift;

class StringEmail
{
    public static void main(String[] args)
    {
        String email="[email protected]";
        String email1="[email protected]";
        String email2="tiankong.sina.com";
        String email3="[email protected]";
        String email4="[email protected]";
        String email5="@.";
        System.out.println(operate(email));
        System.out.println(operate(email1));
        System.out.println(operate(email2));
        System.out.println(operate(email3));
        System.out.println(operate(email4));
        System.out.println(operate(email5));

    }
    public static boolean operate(String str)
    {
         boolean flag=true;
         if (str.indexOf("@")==-1)
         {
             flag=false;
         }
         if (str.indexOf(".")==-1)
         {
             flag=false;
         }
         if (str.indexOf(".")<=str.indexOf("@"))
         {
             flag=false;
         }
         return flag;
    }

}

看结果3?

package com.swift;

class StringEquals
{
    public static void main(String[] args)
    {
        String str="Hello";
        String str1=new String("Hello");
        if(str.equals(str1))
        System.out.println("111111111");
        else
        System.out.println("00000000000");
    }
}

看结果4?

package com.swift;

public class StringResult {
    String str = new String("good");
    char[] ch = { ‘a‘, ‘b‘, ‘c‘ };

    public static void main(String args[]) {
        StringResult sr = new StringResult();
        sr.change(sr.str, sr.ch);
        System.out.print(sr.str + "and");
        System.out.print(sr.ch);
    }

    public void change(String str, char ch[]) {
        str = "test ok";
        ch[0] = ‘g‘;
    }
}

看结果5?

package com.swift;

class StringJudge
{
    public static void main(String[] args)
    {
        String str1="Hello";
        String str2=new String(" World");
        System.out.println(str1+str2);
        String a="ok";
        String b="ok";
        String c=new String ("ok");
        if(a==b)
            System.out.println("1");
        else
            System.out.println("0");
        if(a==c)
            System.out.println("1");
        else
            System.out.println("0");
        if(b==c)
            System.out.println("1");
        else
            System.out.println("0");

        if(a.equals(b))
            System.out.println("1");
        else
            System.out.println("0");
        if(a.equals(c))
            System.out.println("1");
        else
            System.out.println("0");
        if(b.equals(c))
            System.out.println("1");
        else
            System.out.println("0");
    }
}

如何解释?

不同的是,第一条先在内存中创建了"ok"这个String,然后将reference赋给a,下一条语句String b = "ok";那么JVM将不再创建"ok",而是直接将第一个"ok"的reference赋给b,也就是说,a和b是使用同一块内存,而String c = new String("ok");那JVM将在内存中再创建一块区域放上“ok”这个字符串。

时间: 2024-10-10 13:42:12

java中的String类 字符串拆分成字符串数组 判定邮箱地址 字符串比较 看结果?的相关文章

java 中的String类

String a = "aaa"; 用这种方式的时候java首先在内存中寻找"aaa"字符串,如果有,就把aaa的地址给它 如果没有则创建 String a = new String("aaa"); 是不管内存中有没有"aaa" 都开辟一块新内存保存它 可以用以下方法验证下 String a = "aaa"; String b = "aaa"; String c = new String

Java中的String为什么要设计成不可变的?

一.不可变类和不可变对象 Normally,you create an object and allow its contents to be changed later.However ,occasionally it is desirable to create an object whose contents cannot be changed once the object has been created.We call such an object as immutable obje

java中的String类常量池详解

test1: package StringTest; public class test1 { /** * @param args */ public static void main(String[] args){ String a = "a1"; String b = "a"+ 1; System.out.println(a==b); }//true } test2: package StringTest; public class test2 { /** *

java中的String类的一点认识

这是学习中用到的一些基础知识 String 是经常会用到的一个类,学习的过程中发现的东西进行的汇总. 1. 初始化方面: String类是一个比较特别的类,初始化的时候有种简化的特殊语法. 1>String s = "abc"; 而按照正规的语法来说,应该是: 2>String s = new String ("abc"); 建议使用1>的方式,原因在于这样比较节省内存空间,从其他网站上照抄下来的说法是,[只是按照面向对象的标准语法,在内存使用上存

第4篇 Java中的String类

JAVA String类 字符串是常量:它们的值在创建之后不能改变.字符串缓冲区支持可变的字符串.因为 String 对象是不可变的,所以可以共享它们.例如: String str = "abc"; 等效于: char data[] = {'a', 'b', 'c'}; String str = new String(data); 注意事项 常用方法 equals()            判断值是否相等 equalsIgnoreCase() 忽略大小写进行对比 toLowerCase

Java中的String类与StringBuffer类

String和StringBuffer主要有2个区别: (1)String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringBuffer类对象为可修改对象,可以通过append()方法来修改值 (2)String类对象的性能远不如StringBuffer类. 具体解释如下: 在java中有3个类来负责字符的操作. 1.Character 是进行单个字符操作的, 2.String 对一串字符进行操作.不可变类. 3.StringB

Java中的String类

在Java中,字符串是对象,是描述字符的基本数据结构,也是程序设计中很重要的一类数据结构 Java专门为存储和处理字符串提供了两个类: String & StringBuffer String类型对象的创建常见的有三种方法 : 1. 通过初始化 String str = "hellow"; 2. 使用new关键字进行创建 String str = new String(); 3. 通过类型转换来创建 String str = Double.toString(123.45); S

Java 中的 String 类常用方法

字符串广泛应用在Java编程中,在Java中字符串属于对象,String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等. String 类的常用方法: 注意事项: 1. 字符串 str 中字符的索引从0开始,范围为 0 到 str.length()-1 2. 使用 indexOf 进行字符或字符串查找时,如果匹配返回位置索引:如果没有匹配结果,返回 -1 3. 使用 substring(beginIndex , endIndex

java中的String类的不可变性的小例子

在java语言中,String类具有不可变性,即常量字符串不可更改.下面的一个小例子简单演示相关概念. 1 public class test { 2 public static void main(String []args){ 3 String str1="hello"; 4 System.out.println(str1); 5 tell(str1); 6 System.out.print(str1); 7 } 8 9 public static void tell(String