如何检查StringBuilder是否为空?

时间:2017-08-01 08:52:46

标签: c# conditional-statements stringbuilder

我必须对一个方法进行单元测试,该方法需要res.mat <- do.call(rbind,lapply(1:nrow(counts.mat),function(i){ return(do.call(cbind,lapply(1:length(df.list),function(l){ return(do.call(cbind,lapply(1:ncol(df.list[[l]]),function(j){ return(do.call(cbind,lapply(1:nrow(df.list[[l]]),function(k){ return(length(which(counts.mat[i,which(grepl(paste0(df.list[[l]][k,j],"_\\d+$"),colnames(counts.mat),perl=T))] >= min.counts)) >= min.replicates) }))) }))) }))) })) 两个项目,并在StringBuilder中填写两个项目之间的差异。

在我的第一次测试中,我给它两个相同的项目,所以我想测试StringBuilder是否为空。

没有StringBuilder方法或属性。

如何轻松检查?

5 个答案:

答案 0 :(得分:34)

如果查看documentation of StringBuilder,它只有4个属性。其中一个是Length

  

StringBuilder对象的长度由Char对象的数量定义。

您可以使用Length属性:

  

获取或设置当前StringBuilder对象的长度。

StringBuilder sb = new StringBuilder();

if (sb.Length != 0)
{
    // you have found some difference
}

另一种可能性是使用String.IsNullOrEmpty方法将其视为字符串,并使用ToString方法将构建器压缩为字符串。您甚至可以获取结果字符串并将其分配给变量,如果您发现了一些差异,则可以使用该变量:

string difference = ""; 

if (!String.IsNullOrEmpty(difference = sb.ToString()))
{
    Console.WriteLine(difference);      
}

答案 1 :(得分:3)

使用StringBuilder.Length属性,此处为doc

if (mySB.Length > 0)
{
     Console.WriteLine("Bang! is not empty!"); 
}

答案 2 :(得分:1)

JDK 15引入了import UIKit class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource, UIImagePickerControllerDelegate & UINavigationControllerDelegate { var arr = [1,1,3,3] var tableview = UITableView() var arrayThatStartsEmptyImage = [UIImage]() var currentIndex = 0 var startBtnpress = UIButton() var selectedIndexPath = IndexPath(row: 0, section: 0) func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 2 } func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { return 118 } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as! customtv return cell } @objc func addCell(){ //add 3 cell } override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. tableview.frame = CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height * 0.8) startBtnpress.frame = CGRect(x: 0, y: view.frame.height * 0.8, width: view.frame.width / 2 , height: view.frame.height / 5) view.addSubview(tableview) view.addSubview(startBtnpress) startBtnpress.backgroundColor = .orange tableview.register(customtv.self, forCellReuseIdentifier: "cell") tableview.delegate = self tableview.dataSource = self } } class customtv: UITableViewCell { lazy var backView : UIView = { let view = UIView(frame: CGRect(x: 10, y: 6, width: self.frame.width , height: 110)) view.backgroundColor = .green return view }() override func layoutSubviews() { backView.clipsToBounds = true backView.frame = CGRect(x: 0, y: 6, width: bounds.maxX , height: 110) } override func setSelected(_ selected: Bool, animated: Bool) { super.setSelected(animated, animated: true) addSubview(backView) } } 方法

当前的实现方式如下

isEmpty()

答案 3 :(得分:0)

使用它,它将起作用:

StringBuilder stringbuilder = new StringBuilder();
if(string.isnullorempty(Convert.toString(stringbuilder)))

答案 4 :(得分:-5)

我们可以检查StringBuilder是否为空。

通过:

StringBuilder sb = new StringBuilder();
if(sb.Length > 0) { 
   //Your code goes here..
}else{
  //StringBuilder is Empty
}

StringBuilder sb = new StringBuilder();
if(!String.IsNullOrEmpty(sb.ToString()){
     //Your code goes here..
}else{
    //StringBuilder is Empty
}