java中API习题

简介: java中API习题

1.编写程序,使用String类和StringBuffer类的方法,

实现将两个字符串大小写转换后连接到一起,再将连接后的字符串倒序输出。

例如 “PersoN”“peOple”,连接成“pERSOnPWoPLE”,再逆序输出“ELPoEPnOSREp

public static void main(String[] args) {
    String str = new String("PersoN");
    StringBuffer str2 = new StringBuffer("peOple");
    //StringBuffer转换String
    String str1 = new String(str2);
    //方法二
//    String str1 = str2.toString();
    String str3 = new String(str+str1);
    StringBuffer str4 = new StringBuffer(str3).reverse();
//    System.out.println(str3);
    for (int i = 0; i < str4.length(); i++) {//遍历字符串
      if (Character.isLowerCase(str4.charAt(i))) {//判断是不是小写     System.out.print((str4.charAt(i)+"").toUpperCase());//将字符串转换为大写
      }else {//不是小写的情况
    System.out.print((str4.charAt(i)+"").toLowerCase());//将字符串转换为小写
      }
    }
  }

2.计算从今天是算起,170天以后是几月几号,并格式化成XXXX年XX月XX日的形式输出。

提示:

① 调用Calendar类的add方法计算170以后的日期。

② 调用Calendar类的getTime方法返回Date类对象

使用SimpleDateFormat类的对象调用format方法输出指定格式的日期

public static void main(String[] args) {
    //获取当前时间
    Calendar c = Calendar.getInstance();
    c.add(Calendar.DATE,170);
    Date date = c.getTime();
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
    System.out.println(sdf.format(date));
  }

3.计算2021年4月25日和2020年7月8日之间间隔的天数。

提示:

① 创建SimpleDateFormat类的对象,指定日期格式化的格式

② 按照指定格式从键盘上输入日期字符串(和上面指定格式一致)

③ 用SimpleDateFormat类的对象将输入日期字符串转换为Date类的对象

④ 用Date对象的after方法求出天数差。

public static void main(String[] args) throws ParseException {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入第一个日期格式:2021-4-25");
    String str1 =sc.next();
    System.out.println("请输入第二个日期格式:2020-7-8");
    String str2 =sc.next();
    //SimpleDateFormat类的对象将输入日期字符串转换为Date类的对象
    Date date1 = sdf.parse(str1);
    Date date2 = sdf.parse(str2);
    int sum;
//    date1.after(date2)如果date1比date2大,返回true,否则返回false
    if(date1.after(date2)) {
      sum = (int)((date1.getTime()-date2.getTime())/(1000*3600*24));
    }else {
      sum = (int)((date2.getTime()-date1.getTime())/(1000*3600*24));
    }
    System.out.println("2021年4月25日和2020年7月8日之间间隔的天数是"+sum);
  }

//输入一个字符串判断是否是回文

//回文数:一个字符串反转过来和原来字符串一样

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一个字符串");
    String str = sc.next();
    StringBuffer sb = new StringBuffer(str);
    //反转过来
    sb.reverse();
    int count = 0;
    //判断反转过来的每个字符和原来的是否都相等,统计相等的个数
    for (int i = 0; i < str.length(); i++) {
      if (str.charAt(i) == sb.charAt(i)) {
        count++;
      }
    }
    //相等的个数与原来的字符串长度是否一致
    if (count == str.length()) {
      System.out.println(str+"-是一个回文字符串");
    } else {
      System.out.println(str+"-不是一个回文字符串");
    }
  }

将下列文字中的凡是涉及到“恐怖”“爆炸”“军火”的敏感词过滤掉,然后输出。

“车臣恐怖分子计划利用爆炸摧毁政府的军火库。”

public static void main(String[] args) {
    String str1 = "车臣恐怖分子计划利用爆炸摧毁政府的军火库。";
    String[] str = {"恐怖","爆炸","军火"}; 
    for(String s:str) {
      //replace(旧值,新值),替换
      str1 = str1.replace(s, "");
    }
    System.out.println(str1);
  }
目录
相关文章
|
22天前
|
Java API Spring
打造未来电商新引擎:揭秘Java可扩展API设计,让支付与物流灵活如丝,引领电商时代潮流!
【8月更文挑战第30天】本文通过电商平台案例,探讨了如何设计可扩展的Java API。首先定义支付和物流服务的接口与抽象类,然后实现具体服务,接着引入工厂模式或依赖注入管理服务实例,最后通过配置实现灵活扩展。这种设计确保了应用架构的灵活性和长期稳定性。
37 3
|
23天前
|
安全 Java API
告别繁琐编码,拥抱Java 8新特性:Stream API与Optional类助你高效编程,成就卓越开发者!
【8月更文挑战第29天】Java 8为开发者引入了多项新特性,其中Stream API和Optional类尤其值得关注。Stream API对集合操作进行了高级抽象,支持声明式的数据处理,避免了显式循环代码的编写;而Optional类则作为非空值的容器,有效减少了空指针异常的风险。通过几个实战示例,我们展示了如何利用Stream API进行过滤与转换操作,以及如何借助Optional类安全地处理可能为null的数据,从而使代码更加简洁和健壮。
56 0
|
1月前
|
Java 编译器 API
Java新手必看:轻松掌握API文档使用技巧!
API是预定义的接口,允许开发人员使用一组例程及协议而无需了解内部实现细节。Java API文档详述了标准类库,支持平台无关性和安全性,确保Java程序跨平台的一致性行为。Java类可通过单文件或多文件定义,并支持内部类及包组织。常用API如`Scanner`用于输入处理,`Random`生成随机数,`ArrayList`提供动态列表管理,而`Arrays`和`Math`分别简化数组操作和数学计算。掌握这些API能显著提升Java开发效率。
|
10天前
|
Java API C++
Java 8 Stream Api 中的 peek 操作
本文介绍了Java中`Stream`的`peek`操作,该操作通过`Consumer&lt;T&gt;`函数消费流中的每个元素,但不改变元素类型。文章详细解释了`Consumer&lt;T&gt;`接口及其使用场景,并通过示例代码展示了`peek`操作的应用。此外,还对比了`peek`与`map`的区别,帮助读者更好地理解这两种操作的不同用途。作者为码农小胖哥,原文发布于稀土掘金。
Java 8 Stream Api 中的 peek 操作
|
14天前
|
安全 Java API
【性能与安全的双重飞跃】JDK 22外部函数与内存API:JNI的继任者,引领Java新潮流!
【9月更文挑战第7天】JDK 22外部函数与内存API的发布,标志着Java在性能与安全性方面实现了双重飞跃。作为JNI的继任者,这一新特性不仅简化了Java与本地代码的交互过程,还提升了程序的性能和安全性。我们有理由相信,在外部函数与内存API的引领下,Java将开启一个全新的编程时代,为开发者们带来更加高效、更加安全的编程体验。让我们共同期待Java在未来的辉煌成就!
43 11
|
15天前
|
安全 Java API
【本地与Java无缝对接】JDK 22外部函数和内存API:JNI终结者,性能与安全双提升!
【9月更文挑战第6天】JDK 22的外部函数和内存API无疑是Java编程语言发展史上的一个重要里程碑。它不仅解决了JNI的诸多局限和挑战,还为Java与本地代码的互操作提供了更加高效、安全和简洁的解决方案。随着FFM API的逐渐成熟和完善,我们有理由相信,Java将在更多领域展现出其强大的生命力和竞争力。让我们共同期待Java编程新纪元的到来!
38 11
|
12天前
|
监控 Java 大数据
【Java内存管理新突破】JDK 22:细粒度内存管理API,精准控制每一块内存!
【9月更文挑战第9天】虽然目前JDK 22的确切内容尚未公布,但我们可以根据Java语言的发展趋势和社区的需求,预测细粒度内存管理API可能成为未来Java内存管理领域的新突破。这套API将为开发者提供前所未有的内存控制能力,助力Java应用在更多领域发挥更大作用。我们期待JDK 22的发布,期待Java语言在内存管理领域的持续创新和发展。
|
14天前
|
Java API 数据处理
【Java的SIMD革命】JDK 22向量API:释放硬件潜能,让Java应用性能飙升!
【9月更文挑战第7天】 JDK 22向量API的发布标志着Java编程语言在SIMD技术领域的重大突破。这一新特性不仅释放了现代硬件的潜能,更让Java应用性能实现了飙升。我们有理由相信,在未来的发展中,Java将继续引领编程语言的潮流,为开发者们带来更加高效、更加强大的编程体验。让我们共同期待Java在SIMD技术的推动下开启一个全新的性能提升时代!
|
15天前
|
Java API 开发者
【Java字节码操控新篇章】JDK 22类文件API预览:解锁Java底层的无限可能!
【9月更文挑战第6天】JDK 22的类文件API为Java开发者们打开了一扇通往Java底层世界的大门。通过这个API,我们可以更加深入地理解Java程序的工作原理,实现更加灵活和强大的功能。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来!
|
13天前
|
Java API 开发者
【Java字节码的掌控者】JDK 22类文件API:解锁Java深层次的奥秘,赋能开发者无限可能!
【9月更文挑战第8天】JDK 22类文件API的引入,为Java开发者们打开了一扇通往Java字节码操控新世界的大门。通过这个API,我们可以更加深入地理解Java程序的底层行为,实现更加高效、可靠和创新的Java应用。虽然目前它还处于预览版阶段,但我们已经可以预见其在未来Java开发中的重要地位。让我们共同期待Java字节码操控新篇章的到来,并积极探索类文件API带来的无限可能!