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

输入/比较字符串,返回数字,Java

傅茂实
2023-03-14

最近,我一直在尝试构建一个程序,它可以完成4件事:

1) 从键盘输入一个单词。

2)用包含字母表字母的字符串的上下文检查这个单词的上下文。

3)将给定单词的字母与字母表字符串的字母进行比较,只要匹配,它将返回该字母在字母表字符串中的位置1。(例如。word='a'位置=1,因为'a'是第一个字母)

4) 获取所有这些位置的总和。(例如word='abc'总计=6)

现在让我向您展示我用代码编写的内容。


//Part 1 Entering word from keyboard

包介绍Java;

导入java.util.扫描仪;

公共类命理学{

public static void main(String[] args) 
{

    int m=0,n=0,sum=0;
    int j,k;


    Scanner user_input=new Scanner(System.in);

    String word;
    System.out.print("Give a word: ");
    word=user_input.next();

字符串字1=“\u03b1\u03b2\u03b3\u03b4\u03b5\u03b6\u03b7\u03b8\u03b9\u03ba\u03bb\u03bc\u03bd\u03be\u03bf\u03c0\u03c1\u03c3\u03c2\u03c4\u03c5\u03c6\u03c7\u03c8\u03c9”;

现在,第1部分和第2部分工作正常。

我的问题在于,当我试图将输入的单词的字母与unicode格式的字母串(unicode格式的字母来自希腊字母表)进行比较时。我尝试了许多变体,也参考了这里的一些文章,但我找不到解决方案。

为了让事情更清楚一点,让我们假设我输入了“你好”这个词。我想检查“h”是否在字母字符串中,如果是,我想得到它作为整数的位置,在我们的例子中,它是数字“8”(在字符串1中的位置),依此类推。

我的程序的最后一部分是从给定的单词中得到所有的数字,并得到它的总数(“你好”=8 5 12 12 20=57)。

事先非常感谢。


共有1个答案

逑彬炳
2023-03-14

这个怎么样:

String alphabet = "abcdefgh";
String input = "abc";
int value = input.chars()
    .map(alphabet::indexOf)
    .map(i -> i + 1)
    .sum()

System.out.println(value);
 类似资料:
  • 问题内容: 我听说散列(即将字符串或对象转换为数字)用于字符串等,因为比较数字比字符串更容易。如果为真,这是什么原因? 问题答案: 不一定是这种情况,但大多数时候可能是这样。 请考虑以下情况: 我想比较字符串“ apples”和“ oranges”。如果我只想确定“ apples” ==“ oranges”,我只需要比较每个字符串的第一个字符:’a’!=’o’=>“ apples”!=“ oran

  • 我在客户端将一些参数存储在HTML中,然后需要将它们作为整数进行比较。不幸的是,我遇到了一个我无法解释的严重错误。bug似乎是我的JS将参数作为字符串而不是整数读取,导致我的整数比较失败。 我生成了一个错误的小例子,我也无法解释。运行时,以下返回“true”:

  • 主要内容:equals() 方法,equalsIgnoreCase() 方法,equals()与==的比较,compareTo() 方法字符串比较是常见的操作,包括比较相等、比较大小、比较前缀和后缀串等。 在 Java 中,比较字符串的常用方法有 3 个:equals() 方法、equalsIgnoreCase() 方法、 compareTo() 方法。下面详细介绍这 3 个方法的使用。 equals() 方法 equals() 方法将逐个地比较两个字符串的每个字符是否相同。如果两个字符串具有相

  • 我已经声明了一个实现可比较接口和compareTo方法的类,使用employee ID比较两个员工。创建的类对象插入数组列表。现在,当我使用collections.sort(arrayList对象)时,它工作得很好。我对collective和comparator接口之间的比较有何不同感到困惑。我想知道如何在纯粹由数字组成的employee id字符串和其他字符串employee id之间进行比较,

  • 问题内容: 我有一个简单的疑问。如果有人帮助我,那就太好了。 我有两个字符串: 这两个值相等,但是如何在Java中比较它们呢?我们拥有并用于比较字符串alpha值,类似地,如何比较数字值。 问题答案: 这就对了。您可以使用方法将数字字符串转换为整数,该方法将返回类型。然后比较与相同。

  • 我试着比较两个字符串的字符 String string1=“ABC” 这里举个例子,如果我们一起比较字符串,在索引“1”中的字符串“B”中的索引0中可以找到字符串“A”,所以通过比较字符串,我应该得到一个数字01221,我知道在java中它有,,但我想不出如何实现这一点