Java 创建一个方法,返回随机音符的字符串表示形式,这些音符的随机持续时间是多少?
我需要Java 创建一个方法,返回随机音符的字符串表示形式,这些音符的随机持续时间是多少?,java,string,class,methods,Java,String,Class,Methods,我需要playGuitar方法返回16个随机持续时间的随机音符的字符串表示形式。输出应该如下所示:A(2)、G(3)、B(0.5)、C(1)、C(1)、D(0.25),…] 另外,如何在我的吉他构造器中将颜色数据字段显示为蓝色或红色,而不是RGB值 我不想使用数组 import java.awt.Color; import java.util.Random; public class Guitar { private int numStrings = 6; private d
playGuitar
方法返回16个随机持续时间的随机音符的字符串表示形式。输出应该如下所示:A(2)、G(3)、B(0.5)、C(1)、C(1)、D(0.25),…]
另外,如何在我的吉他构造器中将颜色
数据字段显示为蓝色
或红色
,而不是RGB值
我不想使用数组
import java.awt.Color;
import java.util.Random;
public class Guitar {
private int numStrings = 6;
private double guitarLength = 28.2;
private String guitarManufacturer = "Gibson";
private Color guitarColor = Color.red;
Guitar(){
int numStrings = 6;
double guitarLength = 28.2;
String guitarManufacturer = "Gibson";
Color guitarColor = Color.red;
}
Guitar(int specStrings, double specLength, String specManufacturer, Color specColor){
numStrings = specStrings;
guitarLength = specLength;
guitarManufacturer = specManufacturer;
guitarColor = specColor;
//String s1 = Color.toString(specColor);
}
public String playGuitar(String str3){
Random rnd = new Random();
for (int iCount = 0; iCount<16 ; iCount++){
char a = (char) (rnd.nextInt(7) + 'A');
double b = (double) (rnd.nextInt(5)+1);
String str1 = Double.toString(b);
String str2 = Character.toString(a);
//System.out.println(a);
//System.out.println(str1);
str3 = str2+"("+str1+")";
continue;
//System.out.println(str2+"("+str1+")");
//System.out.println(str3);
//String str4 = String.toString(str3);
//System.out.println(str4);
}
return str3;
}
public String toString(){
return numStrings+" "+guitarLength+" "+guitarManufacturer+" "+guitarColor;
}
public int getNumStrings (){
return numStrings;
}
public double getGuitarLength(){
return guitarLength;
}
public String getGuitarManufacturer(){
return guitarManufacturer;
}
public Color getGuitarColor(){
return guitarColor;
}
}
导入java.awt.Color;
导入java.util.Random;
公共级吉他{
私有整数numStrings=6;
私人双吉他长度=28.2;
私人弦吉他制造商=“吉布森”;
专用颜色吉他颜色=Color.red;
吉他(){
int numStrings=6;
双吉他长度=28.2;
弦吉他制造商=“吉布森”;
颜色吉他颜色=Color.red;
}
吉他(int-specStrings、双specLength、String-specManufacturer、Color-specColor){
numStrings=specStrings;
吉他长度=规格长度;
吉他制造商=规格制造商;
吉他颜色=特殊颜色;
//字符串s1=Color.toString(specColor);
}
公共弦乐吉他(弦乐str3){
随机rnd=新随机();
对于(int iCount=0;iCount我修复了您的吉他
类的问题,并运行了playGuitar
方法的以下测试。我手动格式化了输出以适应答案
F(2.75), G(2.50), G(0.75), A(0.25), D(1.75), G(0.75),
F(0.50), C(2.75), A(2.50), A(1.00), A(2.25), E(1.50),
D(2.50), G(1.25), A(0.50), G(1.00)
我做的主要改变是,
我添加了一个main
方法,我可以测试吉他
类
我修复了空构造函数以使用实例变量
我将吉他颜色更改为字符串
,因为您希望显示“红色”或“蓝色”。颜色
类用于使用图形
或图形2D
类绘制实际颜色
我修复了你的弹吉他
课程的众多问题
这是代码。我希望你通过阅读代码学到一些东西
import java.util.Random;
public class Guitar {
public static void main(String[] args) {
Guitar guitar = new Guitar();
System.out.println(guitar.playGuitar());
}
private int numStrings;
private double guitarLength;
private String guitarManufacturer;
private String guitarColor;
Guitar() {
numStrings = 6;
guitarLength = 28.2;
guitarManufacturer = "Gibson";
guitarColor = "red";
}
Guitar(int specStrings, double specLength,
String specManufacturer, String specColor) {
numStrings = specStrings;
guitarLength = specLength;
guitarManufacturer = specManufacturer;
guitarColor = specColor;
}
public String playGuitar() {
Random rnd = new Random();
String str3 = "";
for (int iCount = 0; iCount < 16; iCount++) {
char a = (char) (rnd.nextInt(7) + 'A');
double b = 0.25d * (rnd.nextInt(11) + 1);
String str1 = String.format("%.2f", b);
String str2 = Character.toString(a);
str3 += str2 + "(" + str1 + ")";
if (iCount < 15) {
str3 += ", ";
}
}
return str3;
}
@Override
public String toString() {
return numStrings + " " + guitarLength + " " +
guitarManufacturer + " " + guitarColor;
}
public int getNumStrings() {
return numStrings;
}
public double getGuitarLength() {
return guitarLength;
}
public String getGuitarManufacturer() {
return guitarManufacturer;
}
public String getGuitarColor() {
return guitarColor;
}
}
import java.util.Random;
公共级吉他{
公共静态void main(字符串[]args){
吉他=新吉他();
System.out.println(guitar.playguitart());
}
私有整数字符串;
私人双吉他长度;
私人弦吉他制造商;
私人弦吉他;
吉他(){
numStrings=6;
吉他长度=28.2;
吉他制造商=“吉布森”;
吉他颜色=“红色”;
}
吉他(int规格弦乐,双规格长度,
字符串规格(制造商,字符串规格颜色){
numStrings=specStrings;
吉他长度=规格长度;
吉他制造商=规格制造商;
吉他颜色=特殊颜色;
}
公共弦乐吉他(){
随机rnd=新随机();
字符串str3=“”;
对于(int-iCount=0;iCount<16;iCount++){
字符a=(字符)(rnd.nextInt(7)+“a”);
双b=0.25d*(rnd.nextInt(11)+1);
String str1=String.format(“%.2f”,b);
字符串str2=字符.toString(a);
str3+=str2+“(+str1+”);
如果(i计数<15){
str3+=“,”;
}
}
返回str3;
}
@凌驾
公共字符串toString(){
返回numStrings+“”+guitarLength+“”+
吉他制造商+“”+吉他颜色;
}
public int getNumStrings(){
返回numstring;
}
公共双getGuitarLength(){
返回吉他长度;
}
公共字符串getGuitarManufacturer(){
返回吉他制造商;
}
公共字符串getGuitarColor(){
返回原色;
}
}
我修复了您的吉他
类的问题,并对playGuitar
方法进行了以下测试。我手动格式化了输出以适应答案
F(2.75), G(2.50), G(0.75), A(0.25), D(1.75), G(0.75),
F(0.50), C(2.75), A(2.50), A(1.00), A(2.25), E(1.50),
D(2.50), G(1.25), A(0.50), G(1.00)
我做的主要改变是,
我添加了一个main
方法,我可以测试吉他
类
我修复了空构造函数以使用实例变量
我将吉他颜色更改为字符串
,因为您希望显示“红色”或“蓝色”。颜色
类用于使用图形
或图形2D
类绘制实际颜色
我修复了你的弹吉他
课程的众多问题
这是代码。我希望你通过阅读代码学到一些东西
import java.util.Random;
public class Guitar {
public static void main(String[] args) {
Guitar guitar = new Guitar();
System.out.println(guitar.playGuitar());
}
private int numStrings;
private double guitarLength;
private String guitarManufacturer;
private String guitarColor;
Guitar() {
numStrings = 6;
guitarLength = 28.2;
guitarManufacturer = "Gibson";
guitarColor = "red";
}
Guitar(int specStrings, double specLength,
String specManufacturer, String specColor) {
numStrings = specStrings;
guitarLength = specLength;
guitarManufacturer = specManufacturer;
guitarColor = specColor;
}
public String playGuitar() {
Random rnd = new Random();
String str3 = "";
for (int iCount = 0; iCount < 16; iCount++) {
char a = (char) (rnd.nextInt(7) + 'A');
double b = 0.25d * (rnd.nextInt(11) + 1);
String str1 = String.format("%.2f", b);
String str2 = Character.toString(a);
str3 += str2 + "(" + str1 + ")";
if (iCount < 15) {
str3 += ", ";
}
}
return str3;
}
@Override
public String toString() {
return numStrings + " " + guitarLength + " " +
guitarManufacturer + " " + guitarColor;
}
public int getNumStrings() {
return numStrings;
}
public double getGuitarLength() {
return guitarLength;
}
public String getGuitarManufacturer() {
return guitarManufacturer;
}
public String getGuitarColor() {
return guitarColor;
}
}
import java.util.Random;
公共级吉他{
公共静态void main(字符串[]args){
吉他=新吉他();
System.out.println(guitar.playguitart());
}
私有整数字符串;
私人双吉他长度;
私人弦吉他制造商;
私人弦吉他;
吉他(){
numStrings=6;
吉他长度=28.2;
吉他制造商=“吉布森”;
吉他颜色=“红色”;
}
吉他(int规格弦乐,双规格长度,
字符串规格(制造商,字符串规格颜色){
numStrings=specStrings;
吉他长度=规格长度;
吉他制造商=规格制造商;
吉他颜色=特殊颜色;
}
公共弦乐吉他(){
随机rnd=新随机();
字符串str3=“”;
对于(int-iCount=0;iCount<16;iCount++){
字符a=(字符)(rnd.nextInt(7)+“a”);
双b=0.25d*(rnd.nextInt(11)+1);
String str1=String.format(“%.2f”,b);
字符串str2=字符.toString(a);
str3+=str2+“(+str1+”);
如果(i计数<15){
str3+=“,”;
}
}
返回str3;
}
@凌驾
公共字符串toString(){
返回numStrings+“”+guitarLength+“”