Java数据类型----zjp

数据类型

单引号用来表示字符常量。例如‘A’是一个字符,它与“A”是不同的,“A”表示含有一个字符的字符串。
char 类型用来表示在Unicode编码表中的字符。
char类型在内存中存储的是该字符的Unicode编码值,所以char类型可以当做int类型来处理。
常用转义字符:
在这里插入图片描述
在这里插入图片描述

代码

public class TestVar03{
        public static void main(String[] args){
                //声明一个字符型的变量:字符型:单引号引起来的单个字符,
                //在java中无论是字母汉字数字  都是占用一个字符
                char ch1 = 'a';
                System.out.println(ch1);
                char ch2 = 'A';
                System.out.println(ch2);
                char ch3 = '中';
                System.out.println(ch3);
                char ch4 = '2';
                System.out.println(ch4);
                char ch5 = ' ';
                System.out.println(ch5);
                System.out.println("----------下面讲解转义字符:----------------------------");
                char ch6 = '\n';//换行:
                System.out.println("aaa"+ch6+"bbb");	
                System.out.println("aaa\nbbb");//这是字符串	
                System.out.println("aaa\tbbb");// \t代表制表符  
                System.out.println("aaa\bbbb");//\b 退格    aabbb
                System.out.println("aaaaa\rbbb");//\r 将光标回到本行初始位置      bbbaa
                
                System.out.println("\"你好\"");
                System.out.println("“你好”");
                
                System.out.println("------------------------------------------------------");
                
                
                char ch7 = 'a';
                System.out.println(ch7);//a
                System.out.println(ch7+30);//127
                System.out.println(127-ch7);//30
                //结论:字符型我们看到的是字面常量那个字符的效果。但是参与到运算中的时候
                //,底层是按照一个码进行的,当前题中 a 对应的 码 是 97  ---》ASCII码
                
                
                char ch8 = '中';
                System.out.println(ch8);// 中
                System.out.println(ch8+30);// 20043
                System.out.println(20043-ch8);// 30
                
                //结论:字符型我们看到的是字面常量那个字符的效果。但是参与到运算中的时候
                //,底层是按照一个码进行的,当前题中 中  对应的码  20013 ---》Unicode码
                
                //Unicode码的前128位就是ASCII码
                //总结:字符型底层的码就是Unicode码
                System.out.println("----------------扩展:--------------------------------------");
                
                char ch9 = 20013;
                System.out.println(ch9);
                int num = '中';
                System.out.println(num);
                //验证字符型的本质就是一个码 ,而我们看到的是字面常量
                
                char ch10 = (char)20013;
                System.out.println(ch10);
                int num2 =  (int)'中';
                System.out.println(num2);
                
                char ch11 = '2'+2;
                System.out.println(ch11);//4
                
                /*
                '2'+2--->  50+2--->52 
                char ch11 = 52 ;
                System.out.println(ch11);// 4
                */
                
                
        }
}

类型转换

public class TestVar04{
        public static void main(String[] args){
                double d = 10;
                System.out.println(d);
                int i = (int)4.7;
                System.out.println(i);
                /*
                【1】基本类型的类型转换:
                (1)自动转换 ---》 小的给大的 --》  double d = 10;
                (2)强制转换  ----》强转  ----》大的给小的  ---》int i = (int)4.7;	
                */
                
                //写一个表达式,表达式中有多种数据类型:
                double d2 = 12+3.7+6.9F+'a'+true;
                System.out.println(d2);
                /*
                【2】众多类型参与运算的时候,只有布尔类型不能参与到运算中,其余七种基本数据类型都可以。
                【3】double d2 = 12+3.7+6.9F+'a';
                运算的结果是什么类型:
                运算级别:低--》高
                byte,short,char-->int--->long--->float--->double
                按照这个级别,在同一个表达式中有多种类型参与运算的时候,会将表达式中的
                所有类型转换为当前表达式中级别最高的那个。
                double d2 = 12+3.7+6.9F+'a';
                          = 12.0+3.7+6.9+97.0
                                  = double类型的数
                int d2 = (int)(12+3.7+6.9F+'a');
                
                【4】表达式:
                左=右   直接赋值即可
                左<右    强制转换
                左>右    直接赋值即可
                
                */
                
                //【5】特殊:byte,short,char类型,只要在表数范围中不需要强转直接使用即可
                byte b = 12;
                System.out.println(b);
                
                
        }
}

final+Scanner

Scanner扫描器,扫描你输入的数据。

//告诉你扫描器在什么位置:
import java.util.Scanner;
public class TestVar05{
        public static void main(String[] args){
                //圆的周长和面积:
                //变量提取:
                final double PI = 3.14159;
                //一个变量被final修饰,这个变量就会变成一个常量,这个常量的值就不可以被修改了
                //这个常量 --》字符常量  
                //约定俗成的规定:常量名字一般全部大写。
                //拿过来一个扫描器:
                Scanner input = new Scanner(System.in);
                //给一个友好性的提示:
                System.out.print("请录入一个半径:");
                //扫描器用来接收键盘录入的数据:
                int r = input.nextInt();//接收int类型数据的
                
                //周长:
                double c = 2*PI*r;
                System.out.println("周长:"+c);
                
                //PI = 7;//TestVar05.java:11: 错误: 无法为最终变量pi分配值
                //面积:
                double s = PI*r*r;
                System.out.println("面积:"+s);
                
                
        }
}

总结:

【1】感受提取变量的作用
【2】final修饰变量
【3】Scanner扫描器

Scanner录入不同类型的数据

import java.util.Scanner;
public class TestVar06{
        public static void main(String[] args){
                //录入 学号(int),成绩(double),家庭住址(String),性别(String,char)
                Scanner sc = new Scanner(System.in);
                System.out.print("学号:");
                int sno = sc.nextInt();
                System.out.print("成绩:");
                double score = sc.nextDouble();
                System.out.print("住址:");
                String address = sc.next();
                System.out.print("性别:");
                //String sex = sc.next();
                char sex = sc.next().charAt(0);//取的是字符串中的第一个字符 
                
                System.out.println(sno+"---"+score+"---"+address+"---"+sex);
        }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中实现应用程序的全局搜索可以使用Elasticsearch进行实现。引用中的代码片段展示了如何在Java中使用Elasticsearch进行商品的添加操作。你可以通过创建一个Elasticsearch的客户端对象,在该对象中使用IndexRequest来添加商品数据到索引中。 另外,引用中的代码片段展示了如何清除Elasticsearch中的所有商品数据。你可以使用DeleteByQueryRequest来构建一个删除请求,并设置查询条件为匹配所有商品数据。然后使用Elasticsearch的客户端对象执行该删除请求。 除了添加和清除数据,还可以使用Elasticsearch进行搜索操作。你可以创建一个Controller类,如引用中的ElasticSearchController,通过调用ElasticSearchService中的selectItems方法来进行搜索。在该方法中,你可以传入关键字和排序方式作为参数,并返回搜索结果。 总结起来,你可以使用Elasticsearch和Java来实现应用程序的全局搜索功能。通过添加商品数据、清除数据和执行搜索操作,你可以满足全局搜索的需求。123 #### 引用[.reference_title] - *1* *2* *3* [【Java 实战】通过ElasticSearch实现全局搜索功能](https://blog.csdn.net/qq_34383510/article/details/128296562)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值