Java高级工具类_Java高级部分--工具类(1)

一.Java API

1.java.lang

Java语言包(包含String、StringBuffer、Integer、Math、Math、System等类),任何类中,该包中的类都会被自动导入

2.java.util

包含一些实用的工具类( 包含list, calendar, date等类)

3.java.awt

图形用户界面包

4.java.io

提供多种输入/输出功能的类

equals与"=="区别:

equals从值的角度判断是否一致(判断是否长得一致)

"=="从内存地址角度判断是否一致(判断是不是一个东西)

二.包装类

138c56e8a49b386a70a205e4da6065de.png

1.基本数据类型转换为包装类(通过构造方法)

int x = 500;

Integer y = new Integer(x);

2.字符串转换为包装类(通过构造方法或者包装类的valueOf(String s))

字符串通过构造方法转换为包装类

String x= “500”;

Integer y= new Integer(x);

字符串通过包装类的valueOf(String s)转换为包装类

String x= “500”;

Integer y= Integer.valueOf(x);

3.包装类转换为基本数据类型

包装类通过xxxValue()方法转换为基本数据类型

Integer x= new Integer(500);

int y= x.intValue();

4.包装类转换为字符串

包装类通过toString()方法转换为字符串

Integer x= new Integer(500);

String y= x.toString();

5.字符串转换为基本数据类型

字符串通过parseXXX(String s)方法转换为基本数据类型

String x= “500”;

int y= Integer.parsetInt(x);

6.自动的装箱和自动拆箱

在进行基本数据类型和对应的包装类转换时,系统将自动进行JDK自从5.0版本后引入,方便程序的编写

int x= 500;

Integer y= x;

int n = y;

三.字符串类

1.字符串是我们在编程中最常使用的一种数据类型,它的表现形式可以分为两种:String和StringBuffer

2.它不属于8种基本的数据类型,而是一种引用类型

3.String对象代表一组不可改变的Unicode字符序列,对它的任何修改实际上又产生一个新的字符串,String类对象的内容一旦被初始化就不能再改变

4.StringBuffer对象代表一组可改变的Unicode字符序列

5.同时,String类是final类型的类

StringBuffer类

1.StringBuffer类用于内容可以改变的字符串

2.可以使用StringBuffer来对字符串的内容进行动态操作,不会产生额外的对象

String与StringBuffer区别:

String类对象中的内容初始化不可以改变,StringBuffer类对象中的内容可以改变

•需求:String与StringBuffer互相转换

1 packagedemo;2 /*String与StringBuffer之间的转换3 * String -> StringBuffer4 * 方式一:构造方法5 * 方式二:通过append方法6 * StringBuffer -> String7 * 方式一:通过构造方法8 * 方式二:通过toString方法9 **/

10 public classStringAndStringBufferSwitch {11 public static voidmain(String[] args) {12 //String -> StringBuffer13 //创建一个String对象

14 String str = "Hi Java!";15 System.out.println(str);16

17 //方式一:构造方法

18 StringBuffer buffer = newStringBuffer(str);19 System.out.println(buffer);20

21 //方式二:通过append方法

22 StringBuffer buffer2 = newStringBuffer();23 buffer2.append(str);24 System.out.println(buffer2);25

26 //StringBuffer -> String27 //创建一个StringBuffer对象

28 StringBuffer buffer3 = newStringBuffer();29 buffer3.append("Happy birthday Java!");30 System.out.println(buffer3);31

32 //方式一:通过构造方法

33 String str2 = newString(buffer3);34 System.out.println(str2);35

36 //方式二:通过toString方法

37 String str3 =buffer3.toString();38 System.out.println(str3);39 }40 }

135e57980b1e8359b6b015a42926d110.png

四.日期类

SimpleDateFormat类

1.java.text.SimpleDateFormat

2.一个以与语言环境相关的方式来格式化和分析日期的具体类。是抽象类java.text.DateFormat类的子类

3.SimpleDateFormat 使得可以选择任何用户定义的日期-时间格式的模式

SimpleDateFormat类的使用:

获取SimpleDateFormat的实例

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

获取当前系统时间

new Date();

将日期格式成指定的字符串

sdf.format(new Date());

将格式化的字符串转换成日期对象

sdf.parse(“2011-07-16”);

构造方法摘要

hashCode    a1.hashCode();  //通常用来判断是否为同一个对象

toStringa1.toString();//直接输出对象相当于利用该对象调用toString方法

包装类

Integer i1=new Integer(-200);

Integer i2=new Integer(-200);

MIN_VALUE     Integer.MIN_VALUE;    //int的最小值

MAX_VALUE Integer.MAX_VALUE;   //int最大值

compareToi1.compareTo(i2);      //比较值:值相等时反会0

intValuei1.intValue()+234;   //转换成基本数据类型

构造方法摘要

Integer(int value)

构造一个新分配的 Integer 对象,它表示指定的 int 值。

Integer(String s)

构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。

int

compareTo(Integer anotherInteger)

在数字上比较两个 Integer 对象。

int

intValue()

将integer类型转换成int类型

static int

parseInt(String s)

将String转换成基本数据类型。

Character

isDigit     Character.isDigit('8');  //判断是否为数字

isLetter    Character.isLetter(c);  //判断字符值是否为字母

static boolean

isDigit(char ch)

确定指定字符是否为数字。

static boolean

isLetter(char ch)

确定指定字符是否为字母。

static boolean

isLetter(int codePoint)

确定指定字符(Unicode 代码点)是否为字母。

static boolean

isLetterOrDigit(int codePoint)

确定指定字符(Unicode 代码点)是否为字母或数字。

String

String s1 = "asba,nesbu,ssofst,sbjava";

String s8=" abc efghijk ";

concat      String s6 = s1.concat("\n联系我时请说在58同城上看到的");// 末尾追加

charAt       s1.charAt(1);   //根据索引找到该索引位置上的字符

contains   boolean   x=s1.contains("a");  //判断是否包含特定字符

replace   s1.replace("sb", "*");    //替换字符,把s1中的sb字段换成*

endsWith   s1.endsWith(".java");   //判断是否以指定结尾为后缀

indexOf  s1.indexOf("a");          //根据参数找到参数所对应的下标(第一次出现的),找不到时返回值为-1

lastIndexOf s1.lastIndexOf("a");    //根据参数找到该参数最后一次出现的下标,找不到时返回值为-1

split    String s[]=s1.split(","); //根据参数来拆分字符串 ,返回值为字符串数组

for(int i=0;i

System.out.println(s[i]);

}

matches    s1.matches("asba,nesbu,ssofst,sb1java");  //判断是否能够匹配

substring    String  s2=s1.substring(0);  //从给定参数索引位置开始截取字符串

substring  s8.substring(6, 7);    //从开始索引截取到结束索引,包含开始不包含结束

trim       s8.trim().equals("abcefghijk");    //去掉前后空格

将指定字符串连接到此字符串的结尾,末尾追加

char

charAt(int index)

返回指定索引处的 char 值,根据索引找到该索引位置上的字符

boolean

contains(CharSequence s)

当且仅当此字符串包含指定的 char 值序列时,返回 true。判断是否包含特定字符

boolean

endsWith(String suffix)

测试此字符串是否以指定的后缀结束。判断是否以指定结尾为后缀

boolean

isEmpty()

当且仅当 length() 为 0 时返回 true。

boolean

startsWith(String prefix)

测试此字符串是否以指定的前缀开始。

substring(int beginIndex)

返回一个新的字符串,它是此字符串的一个子字符串。

trim()

去掉字符串的首尾空格

Math

round      Math.round(32434.14));  // 四舍五入取整,返回值为int

floor       Math.floor(32434.64));   // 舍位取整,返回值为double

ceil       Math.ceil(32434.14));   // 进位取整,返回值是double

StringBuffer

StringBuffer sbf1=new StringBuffer("abc");

append    StringBuffer sbf2=sbf1.append("123");   //末未追加

capacity    sbf1.capacity();   //容量

delete    delete(0, 3);   //删除:包含开始,不包含结束。下标从0开始

insert   sbf1.insert(1, "neusoft");  //在固定下标位置后面新增数据

setCharAt   sbf1.setCharAt(0, 'h');    //根据索引,修改替换单个字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个通用的Java HTTP请求工具类,可以用于发送HTTPS请求: ```java import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import javax.net.ssl.HttpsURLConnection; import javax.net.ssl.SSLContext; import javax.net.ssl.TrustManager; import javax.net.ssl.X509TrustManager; public class HttpUtils { /** * 发送HTTP GET请求 * @param url 请求的URL地址 * @return 响应结果 */ public static String sendHttpGet(String url) throws Exception { URL obj = new URL(url); HttpURLConnection con = (HttpURLConnection) obj.openConnection(); con.setRequestMethod("GET"); int responseCode = con.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { // 成功 BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String inputLine; StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); return response.toString(); } else { throw new Exception("HTTP请求失败,返回码:" + responseCode); } } /** * 发送HTTPS GET请求 * @param url 请求的URL地址 * @return 响应结果 */ public static String sendHttpsGet(String url) throws Exception { SSLContext sslcontext = SSLContext.getInstance("TLS"); sslcontext.init(null, new TrustManager[] {new X509TrustManager() { public void checkClientTrusted(java.security.cert.X509Certificate[] arg0, String arg1) {} public void checkServerTrusted(java.security.cert.X509Certificate[] arg0, String arg1) {} public java.security.cert.X509Certificate[] getAcceptedIssuers() {return new java.security.cert.X509Certificate[0];} }}, new java.security.SecureRandom()); URL obj = new URL(url); HttpsURLConnection con = (HttpsURLConnection) obj.openConnection(); con.setSSLSocketFactory(sslcontext.getSocketFactory()); con.setRequestMethod("GET"); int responseCode = con.getResponseCode(); if (responseCode == HttpsURLConnection.HTTP_OK) { // 成功 BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream())); String inputLine; StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); return response.toString(); } else { throw new Exception("HTTPS请求失败,返回码:" + responseCode); } } } ``` 这个工具类使用了Java标准库中的`HttpURLConnection`和`HttpsURLConnection`来发送HTTP/HTTPS请求,并且支持GET请求方式。在发送HTTPS请求时,需要先自定义一个`TrustManager`,并且将其设为SSLContext的默认信任管理器,这样才能避免SSL证书验证失败的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值