当前位置: 首页 > 知识库问答 >
问题:

高中AP辅助-计算机科学硬件[副本]

司徒运锋
2023-03-14

我有一个家庭作业,我的老师给我们留下了以下指示:创建一个新的方法,带有字符串输入和字符串返回。检查字符串是否有大写字母,将所有大写字母放在一起并返回该字符串:您的方法头和for-loop提供:没有强大的工具,使用ASCII表您的示例输出应该如下所示:getUpper("Hello,World ")returns " HW " get upper(" No way ")returns " "

这是提供的初始代码

public String getUpper(String s) {
    String output = "";
    for (int i = 0; i < s.length(); i++) {
        //i is the index of the string
        //Your work here
    }

    return output;
}

我已经创建了一个解决方案,但是这个解决方案是硬编码的,如下所示:

public class homework5 {
    public homework5() {
    }
    public String getUpper(String s) {
        String output = "";
        for (int i = 0; i < s.length(); i++) {
            //i is the index of the string
            char c1 = s.charAt(i);
            int a1 = (int)c1;        
            if (a1 < 97) {
                output += c1; // This segment of code works, but is hardcoded. Find a generalized value for it.
            }
        }
        return output;
    }

    public static void main(String args[]) {
        homework5 obj1 = new homework5();
            //method call
        System.out.println(obj1.getUpper("Hello"));
    }
}

我该如何解决这个问题,以找到查找字符的通用方法,检查其ascii值,看看它是否为大写,然后打印出来?

共有2个答案

司马高韵
2023-03-14

您可以将字符串转换为 char 数组,并使用方法检查位置 i 处的数组元素是否大写。

public class homework5{
    public homework5(){
    }
    public String getUpper(String s){
        String output = "";
        for(int i = 0; i < s.length(); i++){
            //i is the index of the string
            if (Character.isUpperCase(s.toCharArray()[i])) {
                output += output + s.toCharArray()[i];
             }
            
         }
        return output;
     }
    public static void main(String args[]){
        homework5 obj1 = new homework5();
            //method call
        System.out.println(obj1.getUpper("Hello"));
    }
}
程博学
2023-03-14

您可以仅与'A''Z'进行比较(因为大写字母在ASCII中是连续的)。

java prettyprint-override">char c1 = s.charAt(i);
if (c1 >= 'A' && c1 <= 'Z') output += c1;

字符。isUpperCase更通用,适用于Unicode,而不仅仅是ASCII。

if (Character.isUpperCase(c1)) output += c1;
 类似资料:
  • scipy 包含许多专注于科学计算中的常见问题的工具箱。它的子模块对应于不同的应用,比如插值、积分、优化、图像处理、统计和特殊功能等。 scipy 可以与其他标准科学计算包相对比,比如GSL (C和C++的GNU科学计算包), 或者Matlab的工具箱。scipy是Python中科学程序的核心程序包;这意味着有效的操作 numpy 数组,因此,numpy和scipy可以一起工作。 在实现一个程序前

  • 本文向大家介绍C语言实现小学生计算机辅助教学系统,包括了C语言实现小学生计算机辅助教学系统的使用技巧和注意事项,需要的朋友参考一下 开发一个小学生计算机辅助教学系统。使用随机书产生函数产生1~10之间的随机数作为操作数,随机产生一道四则运算题,配合使用switch语句和print()函数调用,来为学生输入的正确或者错误的答案输出不同的评价。若10道题做完之后正确率低于75%,则重新做10道题,直到

  • 本书全面而详细地阐述了计算机科学的理论基础,从抽象概念的机械化到各种数据模型的建立,用算法、数据抽象等核心思想贯穿各个主题,很好地兼顾了学科广度和主题深度,帮助读者培养计算机领域的大局观,学习真正的计算机科学。

  • Python 在科学计算上的应用非常广泛,包括数学、统计学、图形学……等等, 也是科学计算领域的首选编程语言之一。 这一部分的文章主要是介绍 Python 在科学计算领域常用的库,以及科学计算在日常中可能的实际用例。 常用库介绍 IPython 和 Jupyter Notebook NumPy NumPy 是 Python 科学计算生态系统的基础,提供了多维数组操作、线性代数运算、傅立叶变换等 多

  • 1.3.什么是计算机科学 计算机科学往往难以定义。这可能是由于在名称中不幸使用了“计算机”一词。正如你可能知道的,计算机科学不仅仅是计算机的研究。虽然计算机作为一个工具在学科中发挥重要的支持作用,但它们只是工具。 计算机科学是对问题,解决问题以及解决问题过程中产生的解决方案的研究。给定一个问题,计算机科学家的目标是开发一个算法,一系列的指令列表,用于解决可能出现的问题的任何实例。算法遵循它有限的过

  • Numpy 是 Python 科学工具栈的基础。它的目的很简单:在一个内存块上实现针对多个条目(items)的高效操作。了解它的工作细节有助于有效的使用它的灵活性,使用有用的快捷方式,基于它构建新的工作。