怎样将String 类型转成Decimal类型 小白问题

String str="123";
网上查到可用 1.decimal.Parse(str) 2.Convert.ToDecimal(str) 后台都会报错
有没有大神知道的

        String str = "777.77";

        BigDecimal big = new BigDecimal(str);

        System.out.println("After Cast:" + big);

或者

        String string = "123";
        Double double1 = Double.valueOf(string);
        System.out.println(double1);

或者

    NumberFormat format = NumberFormat.getInstance();
    Number number = format.parse("1,234");
    double d = number.doubleValue();

public class Test{
public static void main(String[] arg) {
String str1="2.30";
BigDecimal bd=new BigDecimal(str1);
System.out.println(bd);
}
}