互补DNA(Complementary DNA)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31524409/article/details/80758678

题目描述:

在DNA字符串中,符号“A”和“T”是彼此的互补,如“C”和“G”。你有DNA的一个功能(字符串,除了Haskell); 你需要得到另一个互补的一面。 DNA链永远不会是空的或根本没有DNA(再次,除了Haskell)。

解题java代码:

public class DnaStrand {
  public static String makeComplement(String dna) {
   StringBuilder builder = new StringBuilder();
   for(int i=0;i<dna.length();i++){
      if(dna.charAt(i)=='A') builder.append('T');
      if(dna.charAt(i)=='T') builder.append('A');
      if(dna.charAt(i)=='C') builder.append('G');
      if(dna.charAt(i)=='G') builder.append('C');
}
 return builder.toString();
  }
}

使用Java中的System.Text.StringBuilder类来解决本题。

通过用一个重载的构造函数方法初始化变量可以创建StringBuilder类的新实例。

StringBuilder类下的方法名有:

            1)StringBuilder.Append 将信息追加到当前 StringBuilder 的结尾。 

               

StringBuilder a = new StringBuilder();
a.append("a");
a.append("bc");
return a.toString();//输出结果是“abc”

            2)StringBuilder.AppendFormat 用带格式文本替换字符串中传递的格式说明符。 

    int Price= 12;  
    StringBuilder b= new StringBuilder("Your total is ");  
    b.AppendFormat("{0:C} ", Price);  
    return b.toString();//输出结果为“Your total is $12”

            3)StringBuilder.Insert 将字符串或对象插入到当前 StringBuilder 对象的指定索引处。 

扫描二维码关注公众号,回复: 5573536 查看本文章
StringBuilder c = new StringBuilder("Hello World!");  
c.Insert(6,"Beautiful "); 
return c.toString();//输出“Hello BeautifulWorld!”

            4)StringBuilder.Remove 从当前 StringBuilder 对象中移除指定数量的字符。 

StringBuilder d = new StringBuilder("Hello World!");
d.Remove(5,7);
Console.WriteLine(d);//输出的结果是“Hello”

            5)StringBuilder.Replace 替换指定索引处的指定字符。

StringBuilder e = new StringBuilder("Hello World!");
e.Replace('!', '?');
Console.WriteLine(e);//输出结果是“Hello World?”

猜你喜欢

转载自blog.csdn.net/qq_31524409/article/details/80758678
DNA