如何从字符串-java中移除字符串中出现的chrachter中的cod偶数对charachter。?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (65)

** Q01 [7 marks]编写一个以字符串作为输入的java程序,并使用EvenPairs(str)方法检查每个字符(即Alphabet)是否存在偶数对。样本测试案例

输入: “3gy41d21y363”

输出:

  • 3 - 错
  • g - 假
  • 而且 - 是的
  • 4 - 假
  • 1 - 是的
  • d - 假

正如你在输出中看到的那样,每个字符的出现只打印一次,即使它是重复的,我解决了问题,直到这一步我找不到解决方案只打印字符一次,如果它是真或假的结果

这是我的代码:

    package evenpairornot;

import java.util.Scanner;
public class EvenPairOrNot {
static Scanner input = new Scanner(System.in);
public static void main(String[] args) {

    System.out.print("Enter a string: ");
    String s1=input.nextLine();

    EvenPairs(s1);
}

public static void EvenPairs(String s){

    char [] chs=s.toCharArray();
    int count=0;

    for (int i = 0; i <chs.length; i++) {
        for (int j = 0; j <chs.length; j++) {
            if (chs[i]==chs[j]){
                count++; 
            }    
        } 

        if(count%2==0)
            System.out.println(s.charAt(i)+"- true");
            else
            System.out.println(s.charAt(i)+"- False");

        count=0; 
    }

}

}

这是输出:

输入字符串:3gy41d21y363 3-错 g-错 你真的 4-错 1-真的 d-错 2-错 1-真的 你真的 3-错 6-错 3-错

提问于
用户回答回答于

基本上所有人物都被计算在内。我向后看,确保在打印前没有重复。这里有很多优化空间,比如在计算之前进行检查,或者不计算所有字符,可以计算i之后的数字。

public static void EvenPairs(String s) {

    char[] chs = s.toCharArray();
    int count = 0;

    for (int i = 0; i < chs.length; i++) {
        for (int j = 0; j < chs.length; j++) {
            if (chs[i] == chs[j]) {
                count++;
            }
        }

        boolean shouldPrint = true;  
        for (int k = i - 1; k >= 0; k--) {  //loop though each character before the current one to check if it was already printed. 
            if (chs[k] == chs[i]) {         //if we it was already printed don't print.
                shouldPrint = false;
                break;
            }
        }

        if (shouldPrint) {
            if (count % 2 == 0)
                System.out.println(s.charAt(i) + "- true");
            else
                System.out.println(s.charAt(i) + "- False");
        }

        count = 0;
    }

}

热门问答

能提供腾讯区块链TBaas技术上链对接的流程图吗?

您好,非常感谢您的建议,我们目前确实没有整理完整的流程图,我们会尽快补齐并上线。 文字版的流程您可以先参考一下: 1,梳理业务场景和流程 2,规划区块链网络规模 3,购买区块链节点、组建区块链网络 4,根据业务场景编写智能合约 5,应用系统调用区块链的智能合约,与链交互 如果...... 展开详请

关于云直播的几个问题,望大佬解惑?

学生路人
推荐

1 海外单独计费

2 地址都是自己算的 可以变也可以不变

3 这个接口是拉流转推的 ,和播放不是一个东西哈 。

腾讯加固助手不能下载了吗?下载地址在哪里?MAC可以下载吗?我看只能在网页上加固,自己签名。?

腾讯云@移动安全

腾讯 · 移动开发工程师 (已认证)

腾讯云移动安全前端开发
推荐

乐固客户端已下线,可以使用移动应用在线加固https://console.cloud.tencent.com/ms/reinforce/list

可以自行签名打渠道包。

一台服务器能绑定几个域名,我现在需要另外购买一台服务器目前已经有一台服务器并且绑定一个备案过的域名?

推荐
如果问“能绑定多少域名”,那可以绑定无限个。 如果问“能备案多少域名”,那也可以绑定无限个。 如果问“能绑定多少个备案主体名下的域名”,就需要科普了。 (1)一个腾讯云账号只能有一个主体的备案信息(主体即为个人或者单位)。所以有个东西叫做“备案授权码”,每个账号A申请授权码并发送...... 展开详请

我用spark多个特征处理算子对原始数据进行处理,最后通过决策树训练分类,请问怎么导出最终模型?

腾讯智能钛AI开发者

腾讯云 · 智能钛产品团队 (已认证)

腾讯智能钛产品团队官方运营账号。分享产品最新动态,第一时间解答用户疑问。
推荐

您好,如果是使用组件自己编写的代码,可以使用 spark 中的 pipeline 功能,将多个功能串成一个流水线,再把流水线导出为 pmml 模型。详见 https://github.com/jpmml/jpmml-sparkml。

TencentOS例程,keil5编译报错no such file or directory?

Supowang

腾讯 · 高级工程师 (已认证)

腾讯物联网操作系统TencentOS tiny产品接口人---岁寒知松柏,做最好的自己!
推荐
您好!您的代码是早期的代码,请使用最新的github代码,代码下载地址:https://github.com/Tencent/TencentOS-tiny 或者腾讯工蜂 https://git.code.tencent.com/Tencent_Open_Source/Tence...... 展开详请

所属标签

扫码关注云+社区

领取腾讯云代金券