给定String Length,如何将输入作为String

时间:2016-01-19 13:56:15

标签: java string

如何在给定字符串长度

的情况下将用户输入作为字符串

问题链接:

http://www.practice.geeksforgeeks.org/problem-page.php?pid=295

MyApproach:

我使用Scanner来获取测试用例的数量,然后将字符串长度作为输入:

但我很困惑如何获取指定长度的字符串。我的搜索发现没有方法或构造函数可以获取指定长度的字符串。

任何人都可以指导吗?

以下是我的代码:

 Scanner sc=new Scanner(System.in);
 int T=sc.nextInt();
 for(int i=1;i<=T;i++)
  {
    int Strlength=sc.nextInt();
    String strnew=sc.next(); //How to take Stringofspecified character
    ..........
     .........
   }

4 个答案:

答案 0 :(得分:2)

如果字符串的长度与给定输入不匹配,您只能强制用户重新插入字符串。

 Scanner sc=new Scanner(System.in);
 int T=sc.nextInt();
 for(int i=1;i<=T;i++)
  {
    int Strlength=sc.nextInt();
    String strnew = null;
    while (strnew == null || strnew.size() != Strlength) {
      strnew = sc.next(); 
    }
    ..........
     .........
   }

答案 1 :(得分:1)

这样做的一种方法是插入某种测试,例如:

String strnew;
do{
   strnew=sc.next(); //How to take Stringofspecified character
}
while(strnew.length() != Strlength);

答案 2 :(得分:0)

我想出了一种方法。

Scanner sc = new Scanner(System.in);
int strLength = sc.nextInt();
sc.nextLine(); 
String strInput = sc.nextLine();
if(strInput.length()>strLength)
{
    str = str.substring(0, strlength);
}
// Now str length is equal to the desired string length

答案 3 :(得分:0)

class Panel extends ExtendedComponent {
  constructor(props) {
    super(props);
    this.state = { foo: true };
  }

  componentDidMount() {
    this.toggleToast();
  }

  render() {
    if (this.state.foo) {
      return super.render();
    }
    return (
      <div>
        <h1>Hey!!!!!</h1>
      </div>
    );
  }
}