String类

String 类的两种赋值

课程大纲

一、    String类

1、         String可以表示出一个字符串

2、         String类实际上是使用字符数组存储的

二、    String类的两种赋值方式

String s1  = new String(“小白”);

String s2 = “小白”;

/**

   String 类(字符串类)

   java.lang包是系统默认引入的包,所以不需要我们人工导入,

 

*/

 

class StringDemo

{

       public static void main(String[] args)

       {

              //创建字符串的方式一

              String s1 = new String("小白");//会创建两个字符串对象

              //创建字符串的方式二

              String s2  = "小白";//最多创建一个字符串对象,有可能不创建对象

              System.out.println("s1="+s1);

              System.out.println("s2="+s2);

       }

}

String类的两种赋值分析

课程大纲

一、  String类的两种赋值分析

1、         字符串常量池

2、         Strings1 = new String(“小白”)内存分析

3、         Strings2 = “小白”;内存分析

 

/**

   String 类(字符串类)

   java.lang包是系统默认引入的包,所以不需要我们人工导入,

 

*/

 

class StringDemo

{

       public static void main(String[] args)

       {

              //创建字符串的方式一

              String s1 = new String("小白");//会创建两个字符串对象

              //创建字符串的方式二

              String s2  = "小白";//最多创建一个字符串对象,有可能不创建对象

              System.out.println("s1="+s1);

              System.out.println("s2="+s2);

       }

}

String类编译期与运行期分析

课程大纲

一、

/**

 

              String 类编译期与运行期的分析

*/

 

class StringDemo

{

       public static void main(String[] args)

       {

              //情况一

              String a = "a1";

              String a1 = "a" + 1;

              System.out.println(a==a1);//true

              //情况二

              String b = "b1";

              int    bb = 1;

              String b1 = "b" + bb;

              System.out.println(b1==b);//false

              //情况三

              String c = "c1";

              final int  cc = 1;

              String c1 = "c" + cc;

              System.out.println(c1==c);//true

              //情况四

              String d = "d1";

              final int dd = getdd();

              String d1 = "d" + dd;

              System.out.println(d1==d);//false

             

 

       }

       public static int getdd()

              {

                return 1;

              }

}

String字符与字符串操作方法

课程大纲

一、String字符与字符串操作方法

 

classStringMethodDemo1

{

       public static void main(String[] args)

       {

              String s = "lampbrother-小白";

              char c = s.charAt(3);//根据index下标返回字符串中此位置的字符,下标从零开始

              System.out.println("charAt:"+c);

              char [] cc = s.toCharArray();//把字符串转换成字符数组并返回

              for(int i =0;i<cc.length;i++)//遍历输出该字符数组

              {

                System.out.print(cc[i]+" ");

              }

       }

}

String 类字节与字符串方法操作

课程大纲

一、

classStringMethodDemo2

{

       public static void main(String[] args)throws Exception

       {

              String s = "小白是一个无节操、无底线、无干爹的三无少年!";

              //将字符串装换为字节数组

              byte[] bytes = s.getBytes();

              for(int i =0;i<bytes.length;i++)

              {

                System.out.print(bytes[i]+" , ");

              }

              System.out.println();

              //将字节数组转换为字符串(该方法为构造方法,new的时候调用)

              String s1 = new String(bytes);

                     System.out.println("转换后的字符串为:"+s1);

              String s2 = newString(bytes,0,16);//一个汉字占两个字节,offset为偏移量

                 System.out.println("s2="+s2);

              //String s3 = newString(bytes,"utf-8");

              String s3 = newString(bytes,"gbk");

                     System.out.println("s3="+s3);

       }

}

 

String判断是否以指定内容开头或结尾

课程大纲

一、

/**

   判断是否以指定内容开始或者结束

*/

 

classStringMethodDemo2

{

       public static void main(String[] args)

       {

              String s = "威哥是一个猥琐但不下流,爱好搞对象的男人!";

          boolean  b1 =     s.startsWith("威哥");//判断是否以指定内容开头

              System.out.println(b1);

              boolean b2  = s.startsWith("下流",9);//判断指定位置是否以指定内容开头

              System.out.println(b2);

              boolean b3 = s.endsWith("男人!");

              System.out.println(b3);

 

 

       }

}

String类替换操作

课程大纲

一、

/**

   String 替换操作

*/

 

classStringMethodDemo4

{

       public static void main(String[] args)

       {

              String info = "小白:真实a一表淫n才啊!";

              info =info.replace(":",",");//把前面的字符串替换成后面的字符串

              System.out.println(info);

              info = info.replace("小白","小黑");//把前面的字符串替换成后面的字符串

              System.out.println(info);

              info =info.replaceAll("[a-z]","*");//把所有符合正则表达式的值全部替换成后面的

              System.out.println(info);

              info =info.replaceFirst("\\*","#");//只把第一个符合条件的值替换成后面的值

              System.out.println(info);

 

 

       }

}

String类字符串的截取操作

课程大纲

一、

/**

       字符串的截取操作

*/

 

classStringMethodDemo5

{

       public static void main(String[] args)

       {

              String info = "知识就像内裤,看不见但很重要!";

              String s = info.substring(7);//一直截取到最后

              System.out.println(s);

              String s1 = info.substring(0,6);

              System.out.println(s1);

       }

}

String类字符串拆分操作

课程大纲

一、

classStringMethodDemo

{

       public static void main(String[] args)

       {

              String info = "怀才就像怀孕-时间久了-才能看出来!";

              String[] value =info.split("-");

              for(String s:value)

              {

                System.out.println(s);

              }

              value =info.split("-",3);

              for(String s:value)

              {

                System.out.println(s);

              }

 

       }

}

String类字符串查找操作

课程大纲

一、

classStringMethodDemo7

{

       public static void main(String[] args)

       {

              String info = "安能摧眉折腰事权贵,使我不得开心颜!";

              boolean b = info.contains("权贵");//查询是否包含指定字符串

              System.out.println(b);

              int index = info.indexOf('我');//查询所包含的字符所在的下标位置,如果没有则返回-1;

              System.out.println(index);

              int index1 = info.indexOf("开心");//查询所包含的字符串所在的下标位置,如果没有则返回-1

              System.out.println(index1);

              int index2 = info.lastIndexOf('不');//返回字符最后一次出现的索引

              System.out.println(index2);

              int index3 =info.lastIndexOf("不得");//返回字符串最右边出现的索引

              System.out.println(index3);

 

       }

}

                                             String类其他操作方法                         

课程大纲

一、

二、作业:

   1、判断一个Email地址是否正确,要求判断是否存在@和.

   2、给出一个字符串:格式描述:姓名:性别:描述

              苍老师:女:女友大使|小白:不定:各种演员

              威哥:男:非著名讲师

      将其转换成如下形式:

class HomeWork1

{

       public static void main(String[] args)

       {

              String email ="1499817026@qq.com";

              int at = email.indexOf('@');

              int point = email.indexOf('.');

              boolean flag = false;

              if(at>0&&at<point)

              {

               flag = true;

              }

              if(flag)

              {

                System.out.println("email地址合法");

              }

              else{

                System.out.println("email地址不合法");

              }

       }

}

class HomeWork2

{

       public static void main(String[] args)

       {

              String info = "苍老师:女:女友大使|小白:不确定:演员|威哥:男:非著名讲师";

              String [] str =info.split("\\|");

              for(int i= 0;i<str.length;i++)

              {

                 System.out.println(str[i].replace(":","->"));

              }

       }

}

/**

       String的其他操作

*/

 

classStringMethodDemo8

{

       public static void main(String[] args)

       {

              String info = "  time :时间就是生命! ";

              boolean b = info.isEmpty();//判断字符串是否为空

              System.out.println(b);

              //获取字符串的长度

              int len = info.length();

              System.out.println(len);

              //String s1 = s.toLowerCase();转换成小写

              String s = info.toUpperCase();//转换成大写

              System.out.println(s);

               String info1 = info.concat("你要珍惜");//字符串连接

               System.out.println(info1);

               String info2 = info.trim();//去掉字符串的开头和结尾的空格

               System.out.println(info2);

       }

}

值传递与引用传递

课程大纲

一、    值传递和引用传递

class RefDemo1

{

       public static void main(String[] args)

       {

              Cat c = new Cat();

              method(c);

              System.out.println(c.age);

             

       }

       public static void method(Cat cat)

              {

                 cat.age = 5;

              }

             

}

class Cat

{

       int age = 2;//省略引用

}

class RefDemo2

{

       public static void main(String[] args)

       {

              String name = "小白";

              method(name);

              System.out.println(name);

       }

       public static void method(String sname)

       {

         sname = "小红";

       }

}

 

class RefDemo3

{

       public static void main(String[] args)

       {

              Catc = new Cat();

              method(c);

              System.out.println(c.name);

 

       }

       public static void method(Cat cat)

       {

        cat.name = "小黑";

       }

}

class Cat

{

       String name = "小白";

}

class  ValueDemo

{

       public static void main(String[] args)

       {

              int x = 10;

              method(x);

              System.out.println("x="+x);

       }

       public static void method(int x)

       {

          x = 20;

       }

}

 

主要内容:本文详细介绍了一种QRBiLSTM(分位数回归双向长短记忆网络)的时间序列区间预测方法。首先介绍了项目背景以及模型的优势,比如能够有效利用双向的信息,并对未来的趋势上限和下限做出估计。接着从数据生成出发讲述了具体的代码操作过程:数据预处理,搭建模型,进行训练,并最终可视化预测结果与计算分位数回归的边界线。提供的示例代码可以完全运行并且包含了数据生成环节,便于新手快速上手,深入学习。此外还指出了模型未来发展的方向,例如加入额外的输入特性和改善超参数配置等途径提高模型的表现。文中强调了时间序列的标准化和平稳检验,在样本划分阶段需要按时间序列顺序进行划分,并在训练阶段采取合适的手段预防过度拟合发生。 适合人群:对于希望学习和应用双向长短时记忆网络解决时序数据预测的初学者和具有一定基础的研究人员。尤其适用于有金融数据分析需求、需要做多一步或多步预测任务的从业者。 使用场景及目标:应用于金融市场波动预报、天气状况变化预测或是物流管理等多个领域内的决策支持。主要目的在于不仅能够提供精确的数值预计还能描绘出相应的区间概率图以增强结论置信程度。 补充说明:本教程通过一个由正弦信号加白噪构造而成的简单实例来指导大家理解和执行QRBiLSTM流程的所有关键步骤,这既方便于初学者跟踪学习,又有利于专业人士作为现有系统的补充参考工具。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值